package com.ca.project.Server.Modules.Tweets.Service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.ca.project.Server.Modules.Tweets.Context.CheckTweetsContext;
import com.ca.project.Server.Modules.Tweets.Context.CreateTweetsContext;
import com.ca.project.Server.Modules.Tweets.Context.UpdateTweetsContext;
import com.ca.project.Server.Modules.Tweets.Entity.Tweets;
import com.baomidou.mybatisplus.extension.service.IService;

/**
* @author ASUS
* @description 针对表【tweets】的数据库操作Service
* @createDate 2024-12-31 15:09:27
*/
public interface TweetsService extends IService<Tweets> {

    /**
     * 创建推文
     *
     * @param createTweetsContext
     */
    void createTweets(CreateTweetsContext createTweetsContext);

    /**
     * 更新推文
     *
     * @param updateTweetsContext
     */
    void updateTweets(UpdateTweetsContext updateTweetsContext);

    /**
     * 查询推文信息
     *
     * @param checkTweetsContext
     * @return
     */
    Object checkTweets(CheckTweetsContext checkTweetsContext);

    /**
     * 删除推文
     *
     * @param id
     */
    void deleteById(Long id,String t_title);

    /**
     * 分页
     *
     * @param currentPage
     * @param pageSize
     * @param tweets
     * @return
     */
    IPage<Tweets> getPage(Integer currentPage, Integer pageSize, Tweets tweets);

    /**
     * 分页
     *
     * @param currentPage
     * @param PageSize
     * @return
     */
    IPage<Tweets> getPage(Integer currentPage, Integer PageSize);

}
